本章节主要介绍了如何运行Python程序通过HTTP请求与机械臂进行通信。
HTTP(Hypertext Transfer Protocol)是一种用于在Web上进行数据通信的协议,它是属于应用层的面向对象的协议。主要是基于WIFI模块实现的无线通信,请求-响应模型灵活且简单。
在运行Python例程前,您需要先在您的系统上安装好Python,且部署好Python的虚拟环境及安装好所有例程需要用到的安装包,具体教程可以见RoArm-M2-S_Python串口通信控制中的步骤。
在 RoArm-M2-S Python 例程中可以看见其中有四个 Python 程序,HTTP请求通信用到的 Python 例程为 http_simple_ctrl.py。例程如下:
import requests
import argparse
def main():
parser = argparse.ArgumentParser(description='Http JSON Communication')
parser.add_argument('ip', type=str, help='IP address: 192.168.10.104')
args = parser.parse_args()
ip_addr = args.ip
try:
while True:
command = input("input your json cmd: ")
url = "http://" + ip_addr + "/js?json=" + command
response = requests.get(url)
content = response.text
print(content)
except KeyboardInterrupt:
pass
if __name__ == "__main__":
main()
在运行程序前您需要确认机械臂的ip地址。确认机械臂ip地址跟机械臂所处的WIFI模式息息相关,具体可以参考教程RoArm-M2-S_WIFI配置。
使用以下命令来运行HTTP请求通信程序。命令中的 IP 地址要更改为您机械臂的 IP 地址。
python http_simple_ctrl.py 192.168.4.1
注意:无论是哪一种模式下,机械臂需要与该脚本运行的设备处于同一个局域网内。
运行完成后,可以看见返回的信息,接着可以输入JSON格式的指令,也可以获取机械臂的反馈信息,从而与机械臂进行通信。
更多 JSON 格式指令的含义参考教程 RoArm-M2-S_JSON指令含义。